---
title: SAIF.Services.Printing dependencies
summary: Internal and external dependencies for this library.
status: draft
owner: SAIF Case Management
last_reviewed: 2026-08-21
library: SAIF.Services.Printing
reference_type: embedded
---

# SAIF.Services.Printing dependencies

## Internal dependencies

| Dependency | Reference Type | Usage |
| --- | --- | --- |
| [SAIF.Services.Imaging.Import](../saif-services-imaging-import/overview.md) | Project Reference | `clsPrint.ImportInfo` is typed `clsImageImport` (from this library) and is serialized into the `CompositeRequestClass` MSMQ payload and into the synchronous `distributeDocument` SOAP call. |
| SAIF.BOF.Framework.Bindable / Connection / Core / DNS / Logging / Mail / Security / Security.EnvironmentApi | NuGet Package | Supplies `AppGlobal.EnvironmentService`, `EnvironmentServiceBase`, `SAIF.Framework.Security.clsSecurityPrincipal`, and `SAIFXDocument`/`SAIFXElement` base types used throughout `clsPrint`, `clsRSPrint`, `ReportBase`, and the `Reporting.XDesign*` wrappers. |
| SAIF.Framework.Common | NuGet Package | Referenced package dependency; no direct call site confirmed in the scanned source of this library.** |
| SAIF.HashUtil | NuGet Package | Referenced package dependency; no direct call site (e.g. `SystemHashUtil`) confirmed in this library's own scanned source.** |
| SAIF.Web.API.Clients / SAIF.Web.API.Core | NuGet Package | Referenced package dependency; no direct call site confirmed in this library's own scanned source.** |

## External dependencies
| Dependency | Version | Usage |
| --- | --- | --- |
| Oracle.ManagedDataAccess | 21.5.0 | Oracle ODP.NET managed driver; registered in `app.config`/`Web.config` `DbProviderFactories` and the `oracle.manageddataaccess.client` section, but no direct SQL/connection code exists in this library's own source — a transitive artifact of the referenced package.* |
| Newtonsoft.Json | 8.0.3 | Referenced package dependency; no direct call site confirmed in this library's own scanned source.** |
| RestSharp | 106.12.0 | Referenced package dependency; no direct call site confirmed in this library's own scanned source.** |
| xpresso (Web Reference, `wsDocuments/clsGenerate.asmx`) | N/A (auto-generated SOAP proxy) | `clsPrint` uses the generated `xpresso.clsGenerate` proxy to call the external xPression Design document-generation/print/distribute service. |
| SharepointReporting (Web Reference, `ReportExecution2005.asmx`) | N/A (auto-generated SOAP proxy) | `clsRSPrint` uses the generated `SharepointReporting.ReportExecutionService` proxy to load, parameterize, and render SSRS reports. |
| System.Messaging (framework reference) | N/A | Used by `clsPrint` to open/send messages to an MSMQ queue (`documentMSMQPath`) for asynchronous document distribution, including transaction lifecycle management. |
| System.Web / System.Web.Services (framework reference) | N/A | Supports the auto-generated SOAP proxy base classes (`System.Web.Services.Protocols.SoapHttpClientProtocol`) for the xPresso and SharepointReporting Web References. |

## Dependency risks and notes
- `documentGeneratorServiceUrl`, `documentMSMQPath`, `idmFilePath`, and `sqlReportingServiceUrl` all resolve at runtime through `EnvironmentServiceBase.GetConfigSetting`, but none has a static fallback in this repository's config files; their actual runtime values are unknown, making the concrete external endpoints/paths unverifiable from this library alone.**
- The two `ApplicationSettingsBase` (`My.Settings`) design-time Web Reference URLs in `app.config` are never read by consuming code — both proxies overwrite `.Url` from `GetConfigSetting` at construction, so the static values are not a reliable indicator of the runtime endpoints.*
- `SAIF.Framework.Common`, `SAIF.HashUtil`, and `SAIF.Web.API.Clients`/`SAIF.Web.API.Core` are declared package references with no confirmed direct call site in this library's own scanned source; they may be consumed transitively or be unused references.**
- The `Oracle.ManagedDataAccess` reference and its associated `DbProviderFactories`/`oracle.manageddataaccess.client` configuration exist without any direct Oracle connection/command code in this library — a transitive dependency artifact rather than an active data-access path.*
- `SAIF.Application.Claim.Legal` declares a project reference and namespace import to this library, but no confirmed call site to `clsPrint`/`clsRSPrint`/`Reporting.*` was found in that library's scanned source; this may indicate an indirect or unused dependency.**

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [API reference](api/index.md)

## Sources
- `SAIF.Services.Printing\SAIF.Services.Printing.vbproj`
- `SAIF.Services.Printing\packages.config`
- `SAIF.Services.Printing\app.config`
- `SAIF.Services.Printing\Web.config`
